package com.ruoyi.project.bill.service;

import java.util.List;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.project.bill.domain.BillDefine;

/**
 * 单据定义Service接口
 *
 * @author ruoyi
 * @date 2025-07-03
 */
public interface IBillDefineService extends IService<BillDefine>
{
    /**
     * 查询单据定义
     *
     * @param id 单据定义主键
     * @return 单据定义
     */
    public BillDefine selectBillDefineById(String id);

    /**
   * 批量查询
   * */
    public List<BillDefine> selectBillDefineByIds(String[] ids);


    /**
     * 查询单据定义列表
     *
     * @param billDefine 单据定义
     * @return 单据定义集合
     */
    public List<BillDefine> selectBillDefineList(BillDefine billDefine);

    /**
     * 新增单据定义
     *
     * @param billDefine 单据定义
     * @return 结果
     */
    public String insertBillDefine(BillDefine billDefine);

    /**
     * 修改单据定义
     *
     * @param billDefine 单据定义
     * @return 结果
     */
    public String updateBillDefine(BillDefine billDefine);

    /**
     * 批量删除单据定义
     *
     * @param ids 需要删除的单据定义主键集合
     * @return 结果
     */
    public String  deleteBillDefineByIds(String[] ids);

    /**
     * 删除单据定义信息
     *
     * @param id 单据定义主键
     * @return 结果
     */
    public String deleteBillDefineById(String id);


    /**
     * @description: 根据单据定义名称获取单据定义
     * @author: yp
     * @date: 2025/7/3 11:58
     * @param: [defineName]
     * @return: java.lang.String
     **/
    public BillDefine getBillDefineByDefineName(String defineName);
}
